[READ-ONLY] Mirror of https://github.com/flo-bit/skywatched. review movies and tv shows, based on at proto skywatched.app
0

Configure Feed

Select the types of activity you want to include in your feed.

skywatched / src / routes / review / [uri] / +page.svelte
3.2 kB 86 lines
1<script lang="ts"> 2 import ReviewCard from '$lib/Components/Items/ReviewCard.svelte'; 3 import Container from '$lib/Components/Layout/Container.svelte'; 4 import { page } from '$app/stores'; 5 import Comments from '$lib/Components/Items/BlueskyPost/Comments.svelte'; 6 7 let { data } = $props(); 8</script> 9 10<svelte:head> 11 <title>{data.record.author.displayName || data.record.author.handle}'s review | skywatched</title> 12 13 <meta 14 name="description" 15 content="{data.record.author.displayName || data.record.author.handle} reviewed {data.record 16 .record.metadata?.title ?? ''} on skywatched" 17 /> 18 19 <meta property="og:url" content={$page.url.href} /> 20 <meta property="og:type" content="website" /> 21 <meta 22 property="og:title" 23 content="{data.record.author.displayName || data.record.author.handle}'s review | skywatched" 24 /> 25 <meta 26 property="og:description" 27 content="{data.record.author.displayName || data.record.author.handle} reviewed {data.record 28 .record.metadata?.title ?? ''} on skywatched" 29 /> 30 <meta property="og:image" content="{$page.url.href}/og.png" /> 31 32 <meta name="twitter:card" content="summary_large_image" /> 33 <meta property="twitter:domain" content="skywatched.app" /> 34 <meta property="twitter:url" content={$page.url.href} /> 35 <meta 36 name="twitter:title" 37 content="{data.record.author.displayName || data.record.author.handle}'s review | skywatched" 38 /> 39 <meta 40 name="twitter:description" 41 content="{data.record.author.displayName || data.record.author.handle} reviewed {data.record 42 .record.metadata?.title ?? ''} on skywatched" 43 /> 44 <meta name="twitter:image" content="{$page.url.href}/og.png" /> 45</svelte:head> 46 47{#if data.record.record.metadata?.backdrop_path} 48 <img 49 src="https://image.tmdb.org/t/p/w780{data.record.record.metadata.backdrop_path}" 50 alt="" 51 class="fixed h-full w-full object-cover object-center opacity-20" 52 /> 53{/if} 54 55<div class="fixed inset-0 h-full w-full bg-black/50"></div> 56 57<Container class="z-10 flex min-h-screen flex-col items-center pt-8"> 58 <ReviewCard data={data.record} bigText={true} /> 59 60 {#if data.record.record.crosspost?.uri} 61 <div class="relative mb-8 w-full max-w-2xl backdrop-blur-sm"> 62 <div class="flex max-w-full items-center gap-4 overflow-hidden px-4"> 63 <Comments uri={data.record.record.crosspost.uri} user={''} comments={[]} url={''} /> 64 </div> 65 </div> 66 {:else} 67 <div class="flex flex-wrap items-center justify-center gap-4"> 68 <div 69 class="z-10 rounded-lg border border-base-700 bg-base-50/5 px-3 py-2 text-xs font-medium text-base-200 transition-all duration-100 hover:bg-base-50/10" 70 > 71 <a 72 href={`/${data.record.record.item.ref === 'tmdb:m' ? 'movie' : 'tv'}/${data.record.record.item.value}`} 73 > 74 see {data.record.record.item.ref === 'tmdb:m' ? 'movie' : 'show'} details 75 </a> 76 </div> 77 <div 78 class="z-10 rounded-lg border border-base-700 bg-base-50/5 px-3 py-2 text-xs font-medium text-base-200 transition-all duration-100 hover:bg-base-50/10" 79 > 80 <a href={`/user/${data.record.author.handle}`}> 81 all reviews by {data.record.author.displayName || data.record.author.handle} 82 </a> 83 </div> 84 </div> 85 {/if} 86</Container>